package com.android.gufengmall.gen;

import java.util.Map;

import org.greenrobot.greendao.AbstractDao;
import org.greenrobot.greendao.AbstractDaoSession;
import org.greenrobot.greendao.database.Database;
import org.greenrobot.greendao.identityscope.IdentityScopeType;
import org.greenrobot.greendao.internal.DaoConfig;

import com.android.gufengmall.bean.AddressBean;
import com.android.gufengmall.bean.ApparelBean;
import com.android.gufengmall.bean.CultureBean;
import com.android.gufengmall.bean.DiscussBean;
import com.android.gufengmall.bean.FolkCraftBean;
import com.android.gufengmall.bean.ForumBean;
import com.android.gufengmall.bean.GoodsBean;
import com.android.gufengmall.bean.OrderBean;
import com.android.gufengmall.bean.TalentBean;
import com.android.gufengmall.bean.UserBean;
import com.android.gufengmall.bean.VideoBean;

import com.android.gufengmall.gen.AddressBeanDao;
import com.android.gufengmall.gen.ApparelBeanDao;
import com.android.gufengmall.gen.CultureBeanDao;
import com.android.gufengmall.gen.DiscussBeanDao;
import com.android.gufengmall.gen.FolkCraftBeanDao;
import com.android.gufengmall.gen.ForumBeanDao;
import com.android.gufengmall.gen.GoodsBeanDao;
import com.android.gufengmall.gen.OrderBeanDao;
import com.android.gufengmall.gen.TalentBeanDao;
import com.android.gufengmall.gen.UserBeanDao;
import com.android.gufengmall.gen.VideoBeanDao;

// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.

/**
 * {@inheritDoc}
 * 
 * @see org.greenrobot.greendao.AbstractDaoSession
 */
public class DaoSession extends AbstractDaoSession {

    private final DaoConfig addressBeanDaoConfig;
    private final DaoConfig apparelBeanDaoConfig;
    private final DaoConfig cultureBeanDaoConfig;
    private final DaoConfig discussBeanDaoConfig;
    private final DaoConfig folkCraftBeanDaoConfig;
    private final DaoConfig forumBeanDaoConfig;
    private final DaoConfig goodsBeanDaoConfig;
    private final DaoConfig orderBeanDaoConfig;
    private final DaoConfig talentBeanDaoConfig;
    private final DaoConfig userBeanDaoConfig;
    private final DaoConfig videoBeanDaoConfig;

    private final AddressBeanDao addressBeanDao;
    private final ApparelBeanDao apparelBeanDao;
    private final CultureBeanDao cultureBeanDao;
    private final DiscussBeanDao discussBeanDao;
    private final FolkCraftBeanDao folkCraftBeanDao;
    private final ForumBeanDao forumBeanDao;
    private final GoodsBeanDao goodsBeanDao;
    private final OrderBeanDao orderBeanDao;
    private final TalentBeanDao talentBeanDao;
    private final UserBeanDao userBeanDao;
    private final VideoBeanDao videoBeanDao;

    public DaoSession(Database db, IdentityScopeType type, Map<Class<? extends AbstractDao<?, ?>>, DaoConfig>
            daoConfigMap) {
        super(db);

        addressBeanDaoConfig = daoConfigMap.get(AddressBeanDao.class).clone();
        addressBeanDaoConfig.initIdentityScope(type);

        apparelBeanDaoConfig = daoConfigMap.get(ApparelBeanDao.class).clone();
        apparelBeanDaoConfig.initIdentityScope(type);

        cultureBeanDaoConfig = daoConfigMap.get(CultureBeanDao.class).clone();
        cultureBeanDaoConfig.initIdentityScope(type);

        discussBeanDaoConfig = daoConfigMap.get(DiscussBeanDao.class).clone();
        discussBeanDaoConfig.initIdentityScope(type);

        folkCraftBeanDaoConfig = daoConfigMap.get(FolkCraftBeanDao.class).clone();
        folkCraftBeanDaoConfig.initIdentityScope(type);

        forumBeanDaoConfig = daoConfigMap.get(ForumBeanDao.class).clone();
        forumBeanDaoConfig.initIdentityScope(type);

        goodsBeanDaoConfig = daoConfigMap.get(GoodsBeanDao.class).clone();
        goodsBeanDaoConfig.initIdentityScope(type);

        orderBeanDaoConfig = daoConfigMap.get(OrderBeanDao.class).clone();
        orderBeanDaoConfig.initIdentityScope(type);

        talentBeanDaoConfig = daoConfigMap.get(TalentBeanDao.class).clone();
        talentBeanDaoConfig.initIdentityScope(type);

        userBeanDaoConfig = daoConfigMap.get(UserBeanDao.class).clone();
        userBeanDaoConfig.initIdentityScope(type);

        videoBeanDaoConfig = daoConfigMap.get(VideoBeanDao.class).clone();
        videoBeanDaoConfig.initIdentityScope(type);

        addressBeanDao = new AddressBeanDao(addressBeanDaoConfig, this);
        apparelBeanDao = new ApparelBeanDao(apparelBeanDaoConfig, this);
        cultureBeanDao = new CultureBeanDao(cultureBeanDaoConfig, this);
        discussBeanDao = new DiscussBeanDao(discussBeanDaoConfig, this);
        folkCraftBeanDao = new FolkCraftBeanDao(folkCraftBeanDaoConfig, this);
        forumBeanDao = new ForumBeanDao(forumBeanDaoConfig, this);
        goodsBeanDao = new GoodsBeanDao(goodsBeanDaoConfig, this);
        orderBeanDao = new OrderBeanDao(orderBeanDaoConfig, this);
        talentBeanDao = new TalentBeanDao(talentBeanDaoConfig, this);
        userBeanDao = new UserBeanDao(userBeanDaoConfig, this);
        videoBeanDao = new VideoBeanDao(videoBeanDaoConfig, this);

        registerDao(AddressBean.class, addressBeanDao);
        registerDao(ApparelBean.class, apparelBeanDao);
        registerDao(CultureBean.class, cultureBeanDao);
        registerDao(DiscussBean.class, discussBeanDao);
        registerDao(FolkCraftBean.class, folkCraftBeanDao);
        registerDao(ForumBean.class, forumBeanDao);
        registerDao(GoodsBean.class, goodsBeanDao);
        registerDao(OrderBean.class, orderBeanDao);
        registerDao(TalentBean.class, talentBeanDao);
        registerDao(UserBean.class, userBeanDao);
        registerDao(VideoBean.class, videoBeanDao);
    }
    
    public void clear() {
        addressBeanDaoConfig.clearIdentityScope();
        apparelBeanDaoConfig.clearIdentityScope();
        cultureBeanDaoConfig.clearIdentityScope();
        discussBeanDaoConfig.clearIdentityScope();
        folkCraftBeanDaoConfig.clearIdentityScope();
        forumBeanDaoConfig.clearIdentityScope();
        goodsBeanDaoConfig.clearIdentityScope();
        orderBeanDaoConfig.clearIdentityScope();
        talentBeanDaoConfig.clearIdentityScope();
        userBeanDaoConfig.clearIdentityScope();
        videoBeanDaoConfig.clearIdentityScope();
    }

    public AddressBeanDao getAddressBeanDao() {
        return addressBeanDao;
    }

    public ApparelBeanDao getApparelBeanDao() {
        return apparelBeanDao;
    }

    public CultureBeanDao getCultureBeanDao() {
        return cultureBeanDao;
    }

    public DiscussBeanDao getDiscussBeanDao() {
        return discussBeanDao;
    }

    public FolkCraftBeanDao getFolkCraftBeanDao() {
        return folkCraftBeanDao;
    }

    public ForumBeanDao getForumBeanDao() {
        return forumBeanDao;
    }

    public GoodsBeanDao getGoodsBeanDao() {
        return goodsBeanDao;
    }

    public OrderBeanDao getOrderBeanDao() {
        return orderBeanDao;
    }

    public TalentBeanDao getTalentBeanDao() {
        return talentBeanDao;
    }

    public UserBeanDao getUserBeanDao() {
        return userBeanDao;
    }

    public VideoBeanDao getVideoBeanDao() {
        return videoBeanDao;
    }

}
